package com.hyt.it.ogt.kq.service.gov.feign.ks.model;

import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * <p>
 * 考试配置
 * </p>
 *
 * @author chengxh
 * @since 2020-11-24
 */

@Data
@Accessors(chain = true)
@ApiModel(value="考试配置", description="考试配置")
public class PushExamConfigParam implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "配置项类型", required = true)
    @Length(min = 1, max = 50, message = "配置项类型长度不能超过50")
    @NotNull(message = "配置项类型不能为空")
    private String configType;

    @ApiModelProperty(value = "配置项属性（文本框，下拉框，单选框等）", required = true)
    @Length(max = 50, message = "配置项属性长度不能超过50")
    @NotNull(message = "配置项属性不能为空")
    private String  configAttribute;

    @ApiModelProperty(value = "配置项代码", required = true)
    @Length(min = 1, max = 50, message = "配置项代码长度不能超过50")
    @NotNull(message = "配置项代码不能为空")
    private String configCode;

    @ApiModelProperty(value = "配置名称", required = true)
    @Length(min = 1, max = 50, message = "配置名称长度不能超过50")
    @NotNull(message = "配置名称不能为空")
    private String configName;

    @ApiModelProperty(value = "配置项值", required = true)
    private String configValue;

    @ApiModelProperty(value = "所属组")
    private String configGroup;

    @ApiModelProperty(value = "绑定的图标样式")
    private String iconClass;

    @ApiModelProperty(value = "是否可见 ,1表示是，0表示否", required = true)
    @TableField("is_visible")
    private Boolean visible;

    @ApiModelProperty(value = "顺序", required = true)
    @NotNull(message = "配置项类型不能为空")
    private Integer sort;

}
